<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.prime.com.tr/ui" template="./template.xhtml">

    <ui:define name="screen">
        
        <p:tabView id="cadastroUsuarioTabView" effect="opacity" effectDuration="100" >
            
            <p:tab title="Cadastro">
        
                <h:form prependId="false">
                    <h:panelGrid columns="3" id="cadastroUsuarioGrid">
                        <h:outputLabel for="nome" value="Nome" />
                        <p:inputText id="nome" value="#{cadastroUsuarioController.vo.nome}" />
                        <p:message for="nome" />

                        <h:outputLabel for="email" value="E-mail" />
                        <p:inputText id="email" value="#{cadastroUsuarioController.vo.email}"
                                     required="true" />
                        <p:message for="email" />

                        <h:outputLabel for="confirmacaoEmail" value="Confirmação do e-mail" />
                        <p:inputText id="confirmacaoEmail" value="#{cadastroUsuarioController.vo.confirmacaoEmail}" />
                        <p:message for="confirmacaoEmail" />

                        <h:outputLabel for="senha" value="Senha" />
                        <p:password id="senha" value="#{cadastroUsuarioController.vo.senha}"
                                    feedback="true" />
                        <p:message for="senha" />

                        <h:outputLabel for="confirmacaoSenha" value="Confirmação da senha" />
                        <p:password id="confirmacaoSenha" value="#{cadastroUsuarioController.vo.confirmacaoSenha}"
                                    feedback="false"/>
                        <p:message for="confirmacaoSenha" />
                    </h:panelGrid>
                    <p:commandButton action="#{cadastroUsuarioController.salvar}"
                                     value="Salvar" update="cadastroUsuarioGrid,growl" />
                    <p:commandLink action="#{cadastroUsuarioController.limpar}"
                                   value="Limpar" update="cadastroUsuarioGrid"
                                   process="@this"/>
                    <p:commandButton action="#{cadastroUsuarioReportAction.imprimir}"
                                     value="Imprimir" />
                </h:form>
                
            </p:tab>
            
            <p:tab title="Localizar">

                <h:form prependId="false">
                    <h:outputLabel for="filtro" value="Nome" />
                    <p:inputText id="filtro" value="#{cadastroUsuarioController.filtro}"
                                 required="true" />
                    <p:commandButton action="#{cadastroUsuarioController.filtrar}"
                                     value="Filtrar" update="dataTableUsuario" />
                    <p:message for="filtro" />
                    
                    <br/>

                    <p:dataTable id="dataTableUsuario" var="u"
                                 value="#{cadastroUsuarioController.usuarioList}">  
                        <p:column headerText="Nome">  
                            <h:outputText value="#{u.nome}" />
                        </p:column>
                        <p:column headerText="E-mail">  
                            <h:outputText value="#{u.email}" />
                        </p:column>
                        <p:column>
                            <p:commandButton image="ui-icon ui-icon-pencil"
                                    actionListener="#{cadastroUsuarioController.editar}"
                                    update="cadastroUsuarioTabView" >
                                <f:attribute name="usuario" value="#{u}" />
                            </p:commandButton>
                        </p:column>
                    </p:dataTable>
                </h:form>
                
            </p:tab>

        </p:tabView>

        <br/>
        
        <p:fieldset>
            <h:form>
                <p:commandLink value="Voltar" ajax="false" action="index" />
            </h:form>
        </p:fieldset>
        
    </ui:define>

</ui:composition>